package com.isdepci.project.enterprise.domain;

import com.isdepci.framework.aspectj.lang.annotation.Excel;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.isdepci.framework.web.domain.BaseEntity;
import org.apache.commons.lang.builder.ToStringBuilder;
import org.apache.commons.lang.builder.ToStringStyle;

/**
 * 企业对象 enterprise
 *
 * @author isdepci
 * @date 2023-08-22
 */
public class Enterprise extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 企业ID */
    private Long id;

    /** 上级企业ID   没有上级企业默认为0 */
    @Excel(name = "上级企业ID   没有上级企业默认为0")
    private Long parentId;

    /** 名称 */
    @Excel(name = "名称")
    private String enterpriseName;

    /** 企业类型 (1发电企业、2电网企业、3镁冶炼企业、4铝冶炼企业、5钢铁生产企业、6民用航空企业、
	 7平板玻璃生产企业、8水泥生产企业、9陶瓷生产企业、10化工生产企业、0其他企业) */
    @Excel(name = "企业类型 (1发电企业、2电网企业、3镁冶炼企业、4铝冶炼企业、5钢铁生产企业、6民用航空企业、 7平板玻璃生产企业、8水泥生产企业、9陶瓷生产企业、10化工生产企业、0其他企业)")
    private Integer enterpriseType;

    /** 企业状态     1正常 2停用 3删除  */
    @Excel(name = "企业状态     1正常 2停用 3删除 ")
    private Integer enterpriseStatus;

    /** 创建时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date creationTime;

    /** 删除时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "删除时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date deleteTime;

    public void setId(Long id)
    {
        this.id = id;
    }

    public Long getId()
    {
        return id;
    }
    public void setParentId(Long parentId)
    {
        this.parentId = parentId;
    }

    public Long getParentId()
    {
        return parentId;
    }
    public void setEnterpriseName(String enterpriseName)
    {
        this.enterpriseName = enterpriseName;
    }

    public String getEnterpriseName()
    {
        return enterpriseName;
    }
    public void setEnterpriseType(Integer enterpriseType)
    {
        this.enterpriseType = enterpriseType;
    }

    public Integer getEnterpriseType()
    {
        return enterpriseType;
    }
    public void setEnterpriseStatus(Integer enterpriseStatus)
    {
        this.enterpriseStatus = enterpriseStatus;
    }

    public Integer getEnterpriseStatus()
    {
        return enterpriseStatus;
    }
    public void setCreationTime(Date creationTime)
    {
        this.creationTime = creationTime;
    }

    public Date getCreationTime()
    {
        return creationTime;
    }
    public void setDeleteTime(Date deleteTime)
    {
        this.deleteTime = deleteTime;
    }

    public Date getDeleteTime()
    {
        return deleteTime;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("parentId", getParentId())
            .append("enterpriseName", getEnterpriseName())
            .append("enterpriseType", getEnterpriseType())
            .append("enterpriseStatus", getEnterpriseStatus())
            .append("creationTime", getCreationTime())
            .append("deleteTime", getDeleteTime())
            .toString();
    }
}
